import { storageLocal } from "/@/utils/storage";
/** 
将以下格式
{
  '0': 'name1',
  '1': 'name2'
}
转化为select option常用格式
  [
    { value: "1", label: "启用" },
    { value: "0", label: "禁用" }
  ]
 */
export function formatOption(obj, key = "value", lable = "label") {
  if (!(Object.prototype.toString.call(obj) === "[object Object]")) {
    return obj;
  }
  const keys = Object.keys(obj);
  const arr = [];
  keys.forEach(item => {
    arr.push({
      [key]: item,
      [lable]: obj[item]
    });
  });

  return arr;
}

/**
 * 友盟埋点方法
 * @param {String} category
 * @param {String} action
 * @param {Object} label
 * 参数建议：
 * category：类别，一般为XX菜单下的XX页面
 * action：动作，一般为点击操作，点击按钮
 * label：必要业务参数，用于数据统计的不同维度
 * 参数示例：
 * category=库存管理-商品入库-商品选择...
 * action=添加商品
 * label={loginname:admin,mobile:13211112222}
 * 解析后：一级功能=库存管理  二级功能=商品入库 三级功能=商品选择 事件行为=添加商品
 */
export function trackEvent(category, action, label = {}) {
  const objLabel = { ...label };
  const userInfo = storageLocal.getItem("rdms-info");
  if (userInfo && userInfo.username) {
    objLabel.loginname = userInfo.username;
  }
  try {
    window._czc &&
      window._czc.push([
        "_trackEvent",
        category,
        `[${action}]`,
        JSON.stringify(objLabel)
      ]);
  } catch (err) {
    console.log(err);
  }
}
